package models;

import java.util.List;

import javax.persistence.Transient;

import jdk.nashorn.internal.ir.annotations.Ignore;

public class SystemGrid {
	public String id;
	public String url;
	public String title;
	public String method;
	/**
	 * 分页
	 */
	public Boolean pagination;
	/**
	 * 自适应列宽
	 */
	public Boolean fitColumns;
	/**
	 * 交替显示行背景
	 */
	public Boolean striped;
	/**
	 * 自动截取超出列宽
	 */
	public Boolean nowrap;
	/**
	 * 行唯一列
	 */
	public String idField;
	/**
	 * 加载时显示的文本
	 */
	public String loadMsg;
	/**
	 * 是否显示行数
	 */
	public Boolean rownumbers;
	/**
	 * 是否只允许显示一行
	 */
	public Boolean singleSelect;
	/**
	 * 如果设置为 true，当用户点击一行的时候 checkbox checked(选择)/unchecked(取消选择)。
	 * 如果为false，当用户点击刚好在checkbox的时候，checkbox checked(选择)/unchecked(取消选择)。
	 */
	public Boolean checkOnSelect;
	/**
	 * 如果设置为true，点击checkbox将永远选择这行。
	 * 如果设置为false，选择一个行将不会选择checkbox。
	 */
	public Boolean selectOnCheck;
	/**
	 * 定义分页工具栏的位置.可用值有： 'top'，'bottom'，'both'。
	 */
	public String pagePosition;
	/**
	 * 初始化分页码
	 */
	public Integer pageNumber;
	/**
	 * 初始化每页记录数
	 */
	public Integer pageSize;
	/**
	 * 当设置分页属性时，初始化每页记录数列表
	 */
	@Transient
	public List<Integer> PageList;
	/**
	 * 默认排序字段
	 */
	public String sortName;
	/**
	 * 默认排序方式，asc、desc
	 */
	public String sortOrder;
	/**
	 * 是否远程排序
	 */
	public Boolean remoteSort;
	/**
	 * 是否显示行底
	 */
	public Boolean showFooter;
	/**
	 * 行样式
	 */
	public String rowStyler;
	/**
	 * 载入过滤器
	 */
	public String loadFilter;
	/**
	 * 编辑模式
	 */
	@Transient
	public Object editors;
	/**
	 * 定义表格视图
	 */
	@Transient
	public Object view;
	/**
	 * 定义查询参数
	 */
	@Transient
	public Object queryParams;
	public Double height;
	@Transient
	public List<List<SystemColumn>> columns;
	public String onLoadSuccess;
	public String onBeforeLoad;
	public String onClickRow;
	public String onDblClickRow;
	public String onClickCell;
	public String onDblClickCell;
	public String onSortColumn;
	public String onResizeColumn;
	public String onSelect;
	public String onUnselect;
	public String onSelectAll;
	public String onUnselectAll;
	public String onUncheck;
	public String onCheckAll;
	public String onUncheckAll;
	public String checkRow;
	public String uncheckRow;
	public String onCheck;
	public String onBeforeEdit;
	public String onAfterEdit;
	public String onCancelEdit;
	public String onHeaderContextMenu;
	public String onRowContextMenu;
	public SystemGrid(){
		
	}
	public SystemGrid(String url, String title, String method,
			Boolean pagination, Boolean fitColumns, Boolean striped,
			Boolean nowrap, String idField, String loadMsg, Boolean rownumbers,
			Boolean singleSelect, Boolean checkOnSelect, Boolean selectOnCheck,
			String pagePosition, Integer pageNumber, Integer pageSize,
			List<Integer> pageList, String sortName, String sortOrder,
			Boolean remoteSort, Boolean showFooter, String rowStyler,
			String loadFilter, Object editors, Object view, Object queryParams,
			Double height, List<List<SystemColumn>> list) {
		super();
		this.url = url;
		this.title = title;
		this.method = method;
		this.pagination = pagination;
		this.fitColumns = fitColumns;
		this.striped = striped;
		this.nowrap = nowrap;
		this.idField = idField;
		this.loadMsg = loadMsg;
		this.rownumbers = rownumbers;
		this.singleSelect = singleSelect;
		this.checkOnSelect = checkOnSelect;
		this.selectOnCheck = selectOnCheck;
		this.pagePosition = pagePosition;
		this.pageNumber = pageNumber;
		this.pageSize = pageSize;
		PageList = pageList;
		this.sortName = sortName;
		this.sortOrder = sortOrder;
		this.remoteSort = remoteSort;
		this.showFooter = showFooter;
		this.rowStyler = rowStyler;
		this.loadFilter = loadFilter;
		this.editors = editors;
		this.view = view;
		this.queryParams = queryParams;
		this.height = height;
		this.columns = list;
	}
	public String getUrl() {
		return url;
	}
	public void setUrl(String url) {
		this.url = url;
	}
	public String getTitle() {
		return title;
	}
	public void setTitle(String title) {
		this.title = title;
	}
	public String getMethod() {
		return method;
	}
	public void setMethod(String method) {
		this.method = method;
	}
	public Boolean getPagination() {
		return pagination;
	}
	public void setPagination(Boolean pagination) {
		this.pagination = pagination;
	}
	public Boolean getFitColumns() {
		return fitColumns;
	}
	public void setFitColumns(Boolean fitColumns) {
		this.fitColumns = fitColumns;
	}
	public Boolean getStriped() {
		return striped;
	}
	public void setStriped(Boolean striped) {
		this.striped = striped;
	}
	public Boolean getNowrap() {
		return nowrap;
	}
	public void setNowrap(Boolean nowrap) {
		this.nowrap = nowrap;
	}
	public String getIdField() {
		return idField;
	}
	public void setIdField(String idField) {
		this.idField = idField;
	}
	public String getLoadMsg() {
		return loadMsg;
	}
	public void setLoadMsg(String loadMsg) {
		this.loadMsg = loadMsg;
	}
	public Boolean getRownumbers() {
		return rownumbers;
	}
	public void setRownumbers(Boolean rownumbers) {
		this.rownumbers = rownumbers;
	}
	public Boolean getSingleSelect() {
		return singleSelect;
	}
	public void setSingleSelect(Boolean singleSelect) {
		this.singleSelect = singleSelect;
	}
	public Boolean getCheckOnSelect() {
		return checkOnSelect;
	}
	public void setCheckOnSelect(Boolean checkOnSelect) {
		this.checkOnSelect = checkOnSelect;
	}
	public Boolean getSelectOnCheck() {
		return selectOnCheck;
	}
	public void setSelectOnCheck(Boolean selectOnCheck) {
		this.selectOnCheck = selectOnCheck;
	}
	public String getPagePosition() {
		return pagePosition;
	}
	public void setPagePosition(String pagePosition) {
		this.pagePosition = pagePosition;
	}
	public Integer getPageNumber() {
		return pageNumber;
	}
	public void setPageNumber(Integer pageNumber) {
		this.pageNumber = pageNumber;
	}
	public Integer getPageSize() {
		return pageSize;
	}
	public void setPageSize(Integer pageSize) {
		this.pageSize = pageSize;
	}
	public List<Integer> getPageList() {
		return PageList;
	}
	public void setPageList(List<Integer> pageList) {
		PageList = pageList;
	}
	public String getSortName() {
		return sortName;
	}
	public void setSortName(String sortName) {
		this.sortName = sortName;
	}
	public String getSortOrder() {
		return sortOrder;
	}
	public void setSortOrder(String sortOrder) {
		this.sortOrder = sortOrder;
	}
	public Boolean getRemoteSort() {
		return remoteSort;
	}
	public void setRemoteSort(Boolean remoteSort) {
		this.remoteSort = remoteSort;
	}
	public Boolean getShowFooter() {
		return showFooter;
	}
	public void setShowFooter(Boolean showFooter) {
		this.showFooter = showFooter;
	}
	public String getRowStyler() {
		return rowStyler;
	}
	public void setRowStyler(String rowStyler) {
		this.rowStyler = rowStyler;
	}
	public String getLoadFilter() {
		return loadFilter;
	}
	public void setLoadFilter(String loadFilter) {
		this.loadFilter = loadFilter;
	}
	public Object getEditors() {
		return editors;
	}
	public void setEditors(Object editors) {
		this.editors = editors;
	}
	public Object getView() {
		return view;
	}
	public void setView(Object view) {
		this.view = view;
	}
	public Object getQueryParams() {
		return queryParams;
	}
	public void setQueryParams(Object queryParams) {
		this.queryParams = queryParams;
	}
	public Double getHeight() {
		return height;
	}
	public void setHeight(Double height) {
		this.height = height;
	}
	public List<List<SystemColumn>> getList() {
		return columns;
	}
	public void setList(List<List<SystemColumn>> list) {
		this.columns = list;
	}
	
	
}
